package com.Test.Entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import org.yaml.snakeyaml.tokens.Token;


import java.util.Date;
//@Data注解---会在编译的时候自动加上get/set方法、构造方法、equals方法、hashCode、toString
@Data
@TableName("user")//设置实体类对应的表名
public class User {
    //设置主键--type类型自增长--@TableId(type=IdType.AUTO)
    //value属性用于指定主键对应的表的字段，type属性设置主键生成策略，IdType.AUTO自增，默认为雪花算法自动生成
    @TableId(value = "id" ,type=IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
    //添加注解，设置该字段为枚举类
    @EnumValue
    private int sex;
    //字段自动填充策略--fill（添加一个新的字段 ）
    //在添加的时候自动创建这个字段
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;
    //在创建和更新的时候自动创建这个字段
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    @Version//乐观锁注解
    @TableField(fill = FieldFill.INSERT)
    private Integer version;

    @TableLogic //设置为逻辑删除属性
    @TableField(fill = FieldFill.INSERT)
    private Integer deleted;
}
